1. Field of the Invention
This invention generally relates to the field of wireless communications. More particularly, the present invention relates to a novel method for determining when to maintain a compression state and efficiently applying compression techniques on a wireless communication device.
2. Description of Related Art
Recent innovations in wireless communication and computer-related technologies, as well as the unprecedented growth of Internet subscribers, have paved the way for mobile computing. In fact, the popularity of mobile computing has placed greater demands on the current Internet infrastructure to provide mobile users with more support. A crucial part of meeting these demands and providing users with the necessary support is the use of Code Division Multiple Access (CDMA) technology in wireless communication systems.
CDMA is a digital radio-frequency (RF) channelization technique defined in the Telecommunications Industry Association/Electronics Industries Association Interim Standard-95 (TIA/EIA IS-95), entitled xe2x80x9cMOBILE STATION-BASE STATION COMPATIBILITY STANDARD FOR DUAL-MODE WIDEBAND SPREAD SPECTRUM CELLULAR SYSTEMxe2x80x9d, published in July 1993 and herein incorporated by reference. Other standards describing CDMA operations include TIA TR45.5. The CDMA2000 ITU-R RTT Candidate Submission, approved May 15, 1998 and Third Generation Partnership Projectxe2x80x94Technical Specification Groupxe2x80x94Radio Access Network/Radio Interface Protocol Architecture, Release 99, both of which are incorporated by reference. Wireless communication systems employing CDMA technology assign a unique code to communication signals and spread these communication signals across a common (wideband) spread spectrum bandwidth. As long as the receiving apparatus in a CDMA system has the correct code, it can successfully detect and select its communication signal from the other signals concurrently transmitted over the same bandwidth. The use of CDMA produces an increase in system traffic capacity, improves overall call quality and noise reduction, and provides a reliable transport mechanism for data service traffic.
FIG. 1 illustrates the basic elements of such a wireless data communication system 100. Practitioners will readily appreciate that these elements, and their interfaces, may be modified, augmented, or subjected to various standards known in the art, without limiting their scope or function. System 100 allows a mobile terminal equipment, TE2 device 102 (e.g., the terminal equipment such as laptop or palmtop computer) to communicate with a gateway entity, such as an Interworking Function (IWF) 108 or a Packet Data Serving Node (PSDN). The IWF 108 serves as a gateway between the wireless network and other networks, such as the Public Switched Telephone Network (PSTN) or wireline packet data networks providing Internet- or Intranet-based access. System 100 includes a wireless communication device, MT2 device 104 (e.g., wireless telephone), and a Base Station/Mobile Switching Center (BS/MSC) 106 or Radio Access Network (RAN). Often the IWF 108 will be co-located with the BS/MSC 106. An L interface may couple IWF 108 to BS/MSC 106. The TE2 device 102 is electronically coupled to the MT2 device 104 via the Rm interface. The MT2 device 104 communicates with the BS/MSC 106 via the wireless interface Um. The TE2 device 102 and the MT2 device 104 may be integrated into a single unit (e.g., MT0 device) or may be separated out, as in the case of an installed mobile phone unit in which a laptop is the TE2 device 102 and the transceiver is the MT2 device 104. It is important to note that, as indicated by FIG. 2, the combination of the TE2 device 102 and the MT2 device 104, whether integrated or separate, is generally referred to as a mobile station (MS) 103.
Other support is made possible by applying various well-known protocols to control, manage, or otherwise facilitate different aspects of wireless communications. For example, the life-blood of the Internet infrastructure, the Internet Protocol (IP), has been incorporated in many wireless communication services to accommodate packet-oriented services. The IP protocol specifies the addressing and routing of packets (datagrams) between host computers and is defined in Request For Comment 791 (RFC 791) entitled, xe2x80x9cINTERNET PROTOCOL DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION,xe2x80x9d published September 1981, and herein incorporated by reference.
The IP protocol is a network layer protocol that encapsulates data into IP packets for transmission. Addressing and routing information is affixed in the header of the packet. IP headers contain 32-bit addresses that identify the sending and receiving hosts. These addresses are used by intermediate routers to select a path through the network for the packet towards its ultimate destination at the intended address. Thus, the IP protocol allows packets originating at any Internet node in the world to be routed to any other Internet node in the world.
Another well-known protocol incorporated in wireless communications systems is the Point-to-Point Protocol (PPP) protocol, which provides, inter alia, Internet access. The PPP protocol is described in detail in Request for Comments 1661 (RFC 1661), entitled xe2x80x9cTHE POINT-TO-POINT PROTOCOL (PPP)xe2x80x9d, published July 1994 and herein incorporated by reference.
Essentially, the PPP protocol specifies a method for transporting multi-protocol datagrams over point-to-point links and contains three main components: a method of encapsulating multi-protocol datagrams; a Link Control Protocol (LCP) for establishing, configuring, and testing a data link connection; and a family of Network Control Protocols (NCPs) for establishing and configuring different network-layer protocols.
In an effort to provide a host of services on wireless communication systems, various standards have been developed to accommodate the wireless data transmission between the TE2 device 102 and the IWF 108. For example, the TIA/EIA IS-707.5 standard, entitled xe2x80x9cDATA SERVICE OPTIONS FOR WIDEBAND SPREAD SPECTRUM SYSTEMS: PACKET DATA SERVICES,xe2x80x9d published February 1998, and herein incorporated by reference, defines requirements for support of packet data transmission capability on TIA/EIA IS-95 systems and specifies a suite of packet data bearer services. Similarly, the TIA/EIA IS-707-A.5 standard, entitled xe2x80x9cDATA SERVICE OPTIONS FOR SPREAD SPECTRUM SYSTEMS: PACKET DATA SERVICES,xe2x80x9d and the TIA/EIA IS-707-A.9 standard, entitled xe2x80x9cDATA SERVICE OPTIONS FOR SPREAD SPECTRUM SYSTEMS: HIGH-SPEED PACKET DATA SERVICES,xe2x80x9d both published in March 1999 and incorporated by reference, also define requirements for packet data transmission support on TIA/EIA IS-95 systems. In addition, new standards such as TIA/EIA IS-707-A-1 and A-2, entitled xe2x80x9cDATA SERVICE OPTIONS FOR SPREAD SPECTRUM SYSTEMS: CDMA2000 HIGH-SPEED PACKET DATA SERVICES,xe2x80x9d (Ballot Resolution Version 1999) and incorporated by reference, also define requirements for packet data transmission support on CDMA systems.
In particular, the IS-707.5 standard provides certain packet data service modes that may be used to communicate between the TE2 device 102 and IWF 108 via BS/MSC 106. In doing so, IS-707.5 introduces the Network Model, which details the packet data protocol requirements for the Rm and Um interfaces. The network model represents the situation where a first PPP link is set up between the TE2 device 102 and the MT2 device 104, and a second PPP link, independent of the first, is set up between the MT2 device 104 and the IWF 108. This model makes the MT2 device 104 responsible for unframing any received PPP packets and re-framing them before forwarding them to their final destination as well as providing mobility management and network address management.
FIG. 2 illustrates the protocol stacks 200 in each entity of the IS-707.5 Network Model. At the far left of FIG. 2 is a protocol stack, shown in conventional vertical format, depicting the protocol layers running on the TE2 device 102 (e.g., the mobile terminal, laptop or palmtop computer). The TE2 protocol stack is illustrated as being logically connected to the MT2 device 104 protocol stack over the Rm interface. The MT2 device 104, is illustrated as being logically connected to the BS/MSC 106 protocol stack over the Um interface. The BS/MSC 106 protocol stack is, in turn, shown as being logically connected to the IWF 108 protocol stack over the L interface.
By way of example, the protocols depicted in FIG. 2, operate as follows: the PPP layer on the TE2 102 device associated with the Rm interface (i.e., PPPR 208), encodes packets from the upper layer protocols 204, and the network layer IP protocol 206. The PPPR layer 208 then transmits the packets across the Rm interface using an applicable protocol, such as, for example, the TIA/EIA 232-F protocol 210, and the packets are received by the TIA/EIA-232-F-compatible port on the MT2 device 104. The TIA/EIA-232-F standard is defined in xe2x80x9cINTERFACE BETWEEN DATA TERMINAL EQUIPMENT AND DATA CIRCUIT-TERMINATING EQUIPMENT EMPLOYING SERIAL BINARY DATA INTERCHANGExe2x80x9d, published in October 1997 and herein incorporated by reference. It is to be understood that other standards or protocols known to artisans of ordinary skill in the art may be used to define the transmission across the Rm interface. For example, other applicable Rm interface standards may include, the xe2x80x9cUNIVERSAL SERIAL BUS (USB) SPECIFICATION, Revision 1.1xe2x80x9d, published in September 1998, and the xe2x80x9cBLUETOOTH SPECIFICATION VERSION 1.0A CORE, published in July 1999, both incorporated by reference.
The TIA/EIA 232-F protocol 212 on the MT2 device 104 receives the packets from the TE2 device 102 and passes them to the PPPR layer 213 of the MT2 device 104. The PPPR layer 213 unframes the packets encapsulated in the PPP frames and typically, when a data connection is up, layer 213 transfers the packets to the PPP layer associated with the Um interface (i.e., PPPU layer 217). PPPU layer 217 formats the packets in PPP frames for transmission to a PPPU peer located in the IWF 108. The Radio Link Protocol (RLP) 216 and IS-95 protocol 214, both of which are well known in the art, are used to transmit the packet-encapsulated PPP frames to the BS/MSC 106 over the Um interface. The RLP protocol 216 is defined in the IS-707.2 standard, entitled xe2x80x9cDATA SERVICE OPTIONS FOR WIDEBAND SPREAD SPECTRUM SYSTEMS: RADIO LINK PROTOCOLxe2x80x9d, published in February 1998 and herein incorporated by reference, and the IS-95 protocol is defined in the IS-95 standard identified above.
A corresponding RLP protocol 222 and IS-95 protocol 220 in the BS/MSC 106 transfer the packets to the relay layer protocol 234 for transmission across the L interface to the relay layer protocol 224 on the IWF 108. The PPPU layer 232 then unframes the received packets and transfers them to the network layer protocol IP 230, which in turn either passes them to the upper layer protocols 228 or forwards them to their final destination.
Under the IS-707.5 Network Model, the configuring, enabling, and disabling of the IP modules 206, 230 on both ends of the PPP link is provided by the Internet Protocol Control Protocol (IPCP). IPCP is a part of a family of network control protocols included in the PPP protocol and described in Request for Comment (RFC) 1332, xe2x80x9cTHE PPP INTERNET PROTOCOL CONTROL PROTOCOL (IPCP)xe2x80x9d, published in May 1992 and herein incorporated by reference.
IPCP utilizes configuration request messages to negotiate various configuration options. One such option is the IP Compression Protocol Option. When enabled, this option generally employs the Van Jacobson compression methodology for compressing the TCP/IP headers in a PPP packet. The Van Jacobson compression methodology improves the efficiency of a protocol by reducing the overhead in the packet headers and is described in RFC 1144 entitled, xe2x80x9cCOMPRESSING TCP/IP HEADERS FOR LOW-SPEED SERIAL LINKSxe2x80x9d, published in February 1990 and herein incorporated by reference. The Van Jacobson compression methodology is a compression algorithm that relies on knowledge of the fields in the TCP/IP headers to determine how they are likely to change from packet to packet. The negotiation of the IP Compression Protocol Option also requires the specification of maximum compression slot ID field, which determines the maximum number of compression and decompression slots for a particular PPP link and whether the connection ID can be compressed out.
The IPCP configuration option negotiations occur separately for both the Rm interface and the Um interface. That is, the negotiation over the Rm interface is separate from the negotiation the Um interface. The MT2 device 104 must, therefore, separately negotiate configuration options for the PPPR link over the Rm interface and the PPPU link over the Um interface (see FIG. 2).
Due to the fact that the MT2 device 104 is mobile, it is possible that it may move to an area that is served by a different IWF 108. When this happens, a handoff will occur, handing the MT2 device 104 over to the new IWF 108 for service. When a handoff occurs, the PPPU link must be renegotiated over the Um interface, as discussed above. Because PPP negotiation for the Rm and Um interfaces are independent, the renegotiation need only occur on the Um interface.
Of key import, however, is the renegotiation of the maximum number of Um interface compression slots in the reverse link direction (i.e., transmissions from the MT2 device 104 to the IWF 108, refer to FIG. 2). For example, when a call is initially brought up, the network model may attempt to optimize the negotiation process by trying to establish the same IPCP configuration options for the Um and Rm interfaces in both the forward and reverse link directions. This includes instituting the same number of maximum compression slots for the Um and Rm interfaces in both directions and the same ID compression status, so that a compressed packet generated by the TE2 device 102 and having a specific connection ID (i.e., compression slot ID) can be subsequently decompressed by the IWF 108. As such, this network model optimization enables the MT2 device 104 not to uncompress and recompress, that is, the compressed packet is passed through the MT2 without having any Van Jacobson compression algorithms applied to it.
However, if, due to the movement of the MT2 device 104, the PPPU link is renegotiated, there are no assurances that the maximum number of decompression slots that can be supported by the new IWF 108 will match the number of compression slots that were initially negotiated between on the TE2 device 102 and the MT2 device 104. It is, therefore, quite possible that after renegotiation, the maximum number of compression slots on the Um interface is less than the maximum number of compression slots on the Rm interface. As such, the TE2 device 102 could transmit a compressed packet with a connection ID (i.e., compression slot ID) that is greater than what could be accommodated by the decompression slot with the highest ID on the IWF 108. In such cases, the compression slot will not be recognized by the IWF 108 and the packet will be discarded.
The mismatch between the maximum number of Rm compression slots and Um decompression slots will, at best, decrease the transmission efficiency of the wireless communication system by forcing the uncompressed retransmission of all packets having compression slot IDs greater than the highest-numbered decompression slot ID. At worst, this mismatch will result in the loss of all packets having compression slot IDs greater than the highest-numbered decompression slot ID.
Therefore, what is needed is a novel method and system that selectively determines when to maintain a compression state and apply compression techniques on a wireless communication device in order to optimize the transmission efficiency of a wireless communication system.
The present invention addresses the need identified above by providing a method that determines when to maintain a compression state and apply compression techniques on a wireless communication device.
Methods consistent with the principles of the present invention as embodied and broadly described herein include a communication device for receiving packetized data transmitted from a terminal device which is coupled to the communication device via an Rm interface. The communication device determines whether the received packetized data comprises compressed or uncompressed headers and then determines whether connection information identifying a compression slot is included in the compressed data in response to determining that the received packetized data comprises compressed data. The communication device further determines whether the connection information exceeds a highest-numbered decompression slot from a plurality of decompression slots on said Um interface. The communication device sets up a local decompression slot, in the communication device, which corresponds to the connection information in order to maintain said compression state, wherein the local decompression slot is set up in response to determining that the connection information exceeds the highest numbered decompression slot. The communication device decompresses the compressed packetized data when it receives compressed packetized data containing said connection information.